package smartgrid.conf;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import smartgrid.Constants;

@XmlRootElement(name = Constants.TAG_PROSUMER)
public class ProsumerConf {
	
	private String							type;
	
	private String							className;
	
	private int									qty;
	
	private double							selfInterest;
	
	private double							minConsume;
	
	private double							maxConsume;
	
	private double							minGenerate;
	
	private double							maxGenerate;
	
	private double							consumeVariation;
	
	private double							generateVariation;
	
	private double							minPrice;
	
	private double							maxPrice;
	
	private ProsumerDSConf			prosumerDSConf;
	
	private ProsumerSocialConf	prosumerSocialConf;
	
	
	public String getType() {
		return this.type;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_TYPE)
	public void setType(String type) {
		this.type = type;
	}
	
	
	public String getClassName() {
		return this.className;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_CLASSNAME)
	public void setClassName(String className) {
		this.className = className;
	}
	
	
	public int getQty() {
		return this.qty;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_QTY)
	public void setQty(int qty) {
		this.qty = qty;
	}
	
	
	public double getSelfInterest() {
		return this.selfInterest;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_INITIAL_SELF_INTEREST)
	public void setSelfInterest(double selfInterest) {
		this.selfInterest = selfInterest;
	}
	
	
	public double getMinConsume() {
		return this.minConsume;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MIN_CONSUME)
	public void setMinConsume(double minConsume) {
		this.minConsume = minConsume;
	}
	
	
	public double getMaxConsume() {
		return this.maxConsume;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MAX_CONSUME)
	public void setMaxConsume(double maxConsume) {
		this.maxConsume = maxConsume;
	}
	
	
	public double getMinGenerate() {
		return this.minGenerate;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MIN_GENERATE)
	public void setMinGenerate(double minGenerate) {
		this.minGenerate = minGenerate;
	}
	
	
	public double getMaxGenerate() {
		return this.maxGenerate;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MAX_GENERATE)
	public void setMaxGenerate(double maxGenerate) {
		this.maxGenerate = maxGenerate;
	}
	
	
	public double getConsumeVariation() {
		return this.consumeVariation;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_CONSUME_VARIATION)
	public void setConsumeVariation(double consumeVariation) {
		this.consumeVariation = consumeVariation;
	}
	
	
	public double getGenerateVariation() {
		return this.generateVariation;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_GENERATE_VARIATION)
	public void setGenerateVariation(double generateVariation) {
		this.generateVariation = generateVariation;
	}
	
	
	public double getMinPrice() {
		return this.minPrice;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MIN_PRICE)
	public void setMinPrice(double minPrice) {
		this.minPrice = minPrice;
	}
	
	
	public double getMaxPrice() {
		return this.maxPrice;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_MAX_PRICE)
	public void setMaxPrice(double maxPrice) {
		this.maxPrice = maxPrice;
	}
	
	
	public ProsumerDSConf getProsumerDSConf() {
		return this.prosumerDSConf;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_DS)
	public void setProsumerDSConf(ProsumerDSConf prosumerDSConf) {
		this.prosumerDSConf = prosumerDSConf;
	}
	
	
	public ProsumerSocialConf getProsumerSocialConf() {
		return this.prosumerSocialConf;
	}
	
	
	@XmlElement(name = Constants.TAG_PROSUMER_SOCIAL)
	public void setProsumerSocialConf(ProsumerSocialConf prosumerSocialConf) {
		this.prosumerSocialConf = prosumerSocialConf;
	}
}